﻿using System;

namespace Glorysoft.EAP.Core.Entities
{

    public class Equipment
    {

        public virtual string Remark { get; set; }

        public virtual string EqpName { get; set; }
        /// <summary>
        ///设备型号
        /// </summary>

        public virtual string EqpType { get; set; } = string.Empty;
        /// <summary>
        ///设备编号
        /// </summary>

        public virtual string EqpID { get; set; } = string.Empty;
        /// <summary>
        ///区域编号
        /// </summary>

        public virtual string AreaID { get; set; }
        /// <summary>
        ///出厂编号
        /// </summary>
 
        public virtual string FactoryNO { get; set; }
        /// <summary>
        ///出厂时间
        /// </summary>
  
        public virtual DateTime FactoryDate { get; set; }
        /// <summary>
        ///验收时间
        /// </summary>

        public virtual DateTime ReceptionTime { get; set; }
        /// <summary>
        ///部门
        /// </summary>

        public virtual string Department { get; set; } = string.Empty;
        /// <summary>
        ///工序
        /// </summary>

        public virtual string Process { get; set; } = string.Empty;
        /// <summary>
        ///设备IP地址
        /// </summary>

        public virtual string EqpIP { get; set; } = string.Empty;
        /// <summary>
        ///设备secs通信端口
        /// </summary>

        public virtual int EqpSecsGEMPort { get; set; } = 0;
        /// <summary>
        ///设备deviceid
        /// </summary>

        public virtual int EqpDeviceId { get; set; } = 0;
        /// <summary>
        ///是否允许Recipe下载
        /// </summary>

        public virtual int IsDownloadRecipe { get; set; } = 0;
        /// <summary>
        ///设备通信状态
        /// </summary>

        public virtual int EqpCommunicationState { get; set; } = 0;
        /// <summary>
        ///设备控制状态
        /// </summary>

        public virtual int EqpControlState { get; set; } = 0;
        /// <summary>
        ///设备作业状态
        /// </summary>

        public virtual string EqpRunState { get; set; } = string.Empty;
        /// <summary>
        ///设备状态时间
        /// </summary>

        public virtual DateTime EqpRunStateTime { get; set; }
        /// <summary>
        ///是否激活
        /// </summary>

        public virtual int IsActive { get; set; } = 0;
        /// <summary>
        ///主设备编号
        /// </summary>

        public virtual string MainEqpID { get; set; }
        /// <summary>
        ///是否锁机
        /// </summary>

        public virtual int IsLockedEqp { get; set; } = 0;
        /// <summary>
        ///锁机人员
        /// </summary>

        public virtual string LockUser { get; set; }
        /// <summary>
        ///锁机原因
        /// </summary>

        public virtual string LockReason { get; set; }
        /// <summary>
        ///解锁原因
        /// </summary>

        public virtual string UNLOCKREASON { get; set; }
        /// <summary>
        ///解锁人员
        /// </summary>

        public virtual string UnlockUser { get; set; }
        /// <summary>
        ///是否允许上传Recipe
        /// </summary>

        public virtual int IsUploadRecipe { get; set; } = 0;
        /// <summary>
        ///设备摆放位置
        /// </summary>

        public virtual string EqpPlacement { get; set; }
        /// <summary>
        ///维护担当
        /// </summary>

        public virtual string maintainuser { get; set; }
        /// <summary>
        ///提醒时间
        /// </summary>

        public virtual int WarningDate { get; set; }
        /// <summary>
        ///理论UPH
        /// </summary>

        public virtual int TargetUPH { get; set; } = 0;
        /// <summary>
        ///实际UPH
        /// </summary>~

        public virtual int ActualUPH { get; set; } = 0;

        /// <summary>
        ///PM后是否已点检标记，1点检，0未点检
        /// </summary>~

        public virtual int CheckAfterPM { get; set; } = 0;
        /// <summary>
        ///PM后点检结果
        /// </summary>~

        public virtual string CheckResultAfterPM { get; set; }
        /// <summary>
        ///维修后是否已点检标记，1点检，0未点检
        /// </summary>~

        public virtual int CheckAfterRepair { get; set; } = 0;
        /// <summary>
        ///维修后点检结果
        /// </summary>~

        public virtual string CheckResultAfterRepair{ get; set; }
        /// <summary>
        ///当前产品
        /// </summary>~

        public virtual string Product { get; set; }
        /// <summary>
        ///当前Recipe
        /// </summary>~

        public virtual string RecipeId { get; set; }
        /// <summary>
        ///当前良率
        /// </summary>~
        public virtual decimal Yield { get; set; }
    }
}